home *** CD-ROM | disk | FTP | other *** search
- Alun Jones WFTPD 1.9 Documentation
-
- 1910 Westmead 3702
- Houston TX 77077, USA
- WFTPD
- Windows FTP Daemon Version 1.9
- For Winsock v1.1
- Self-congratulatory Introduction
-
- Welcome to WFTPD, and many thanks for caring to read the
- documentation.
-
- For those of you new to Internet terminology, FTP is a
- standard communication protocol to enable file transfer
- (hence its name, deriving from File Transfer Protocol). A
- 1Daemon is a program that sits in the background waiting to
- serve other applications. It is commonly also referred to
- as a server.
-
- This program is an attempt to provide most of the
- functionality associated with this protocol. Since the
- program is still in development, and does not hold all the
- features defined in the standards document for FTP, it may
- not be suitable for all purposes. It is, however, suitable
- for a great many purposes that occur commonly amongst users
- of FTP programs.
-
- This program has certain advantages over many of the
- commercial implementations. The first, and most obvious, is
- its cost. If you can accept certain limitations that I have
- placed on the software, the cost may be nothing, since you
- are not forced to send me money to use this software. A
- registration fee of $15 is suggested, and the benefits of
- sending in your registration include:
-
- Automatic notification of any new versions
- Lifting of all restrictions on the shareware
- version (only five transfers per session, and
- impolite greeting and farewell messages)
- A warm, fuzzy feeling
- The likelihood that I will be sufficiently
- interested to produce a new version
- More of a say in determining new features
-
- Instructions on registering are included in the file
- REGISTER.TXT, as well as at the end of this file.
-
- Other advantages over commercial implementations include
- that this program has been written from scratch to be
- compatible with the Winsock specification, rather than any
- particular implementation. This gives it a greater chance
- of working with those winsock stacks that fully comply with
- the Winsock v1.1 specification. The program has been
- written solely with Windows in mind, and is not a port of
- anyone else's implementation. This allows it to be more
- efficient in the Windows environment.
-
- Well, enough sales talk, and on with actually documenting
- this program.
-
- Documentation begins here!
-
- WFTPD can only be run on top of a winsock v1.1 compliant
- TCP/IP stack. It has been used by many people on a variety
- of different stacks. It seems to work very well on top of
- the shareware Trumpet Winsock available from most ftp sites
- and shareware archives as TWSK10A.ZIP.
-
- If on starting WFTPD, you receive an error "Cannot Find
- WINSOCK.DLL", or a similar message to say that Windows
- cannot find the WFTPD executable, this is because a Winsock
- compliant stack has not been installed correctly on your
- system.
-
- As a shareware application, WFTPD has no warranty, either
- express or implied, about its suitability for any purpose.
- Support is not guaranteed, nor are future updates. The
- program is offered on an as-is basis to any users, and the
- author and distributors of this program are not liable for
- any damage or loss caused by the use, misuse, abuse or
- talking-moose of this program. Similarly, the author and
- distributors are not liable for any damage or loss caused by
- any portion of this code or documentation, no matter how
- poorly written.
-
- WFTPD is distributed through shareware archives as one
- executable, one help file, and a few ancillary files, of
- which this is one. To run the program, all that is required
- is the executable, although you may wish to keep the help
- file around for those moments where you have forgotten what
- you read in this document. The help file should be kept in
- the same directory as the executable.
-
- As with so many other windows programs, WFTPD creates a file
- with the extension ".INI" in the windows directory. (If you
- run the program as "WFTPD.EXE", the INI file will be
- "WFTPD.INI") It is not necessary to edit anything in this
- file directly, since all operations are accessible from menu
- options. It is advised that you NOT edit the INI file in
- normal operation, since there is a certain amount of
- validation of your input that is done when entering items
- through the menus.
-
- The menu structure has been designed to be as intuitive as
- possible, while still providing the required functionality.
- The menus are outlined individually below:
-
- File Menu
-
- From this menu, all the file operations are performed, in
- addition to an option setting that I couldn't find any
- obvious place for. The two file options are "Open Log" and
- "Close Log". These options define whether any enabled
- logging information (q.v.) will be output to a file, and
- which file this information is output to. Any currently
- open log file's name is displayed on the title bar of the
- application. If the application is closed (exited) while a
- log file is open, that file will be reopened on re-starting
- the application. If a log file already has any contents,
- the new logging messages will be appended. For this reason,
- it is advisable to make a regular investigation of your log
- files to ensure that they have not grown too large.
-
- The additional option on this menu is the "Greedy" option.
- Simply described, when this option is checked, transfers TO
- the system running WFTPD will run faster, but more of the
- Windows process time will be taken up. Hence, this option
- should probably only be enabled on a machine that does not
- receive much interactive use of Windows. If you intend to
- use Windows while WFTPD is running, I recommend you disable
- the Greedy option. Currently there is no corresponding
- option for transfers FROM the system running WFTPD.
-
- The final command on the File Menu is the Exit command,
- which closes down the program. It is important on some
- Winsock stacks to close the program down BEFORE exiting
- Windows, since there is currently a bug that leaves a
- 'listener' process active for ftp, which means that should
- you re-enter windows without restarting your TCP/IP stack
- (often requiring a reboot), you will not be able to start
- ANY ftp servers, and incoming ftp requests will get lost. I
- view this as a bug in my software, and also in the
- underlying TCP/IP implementation of the relevant Winsock
- stacks, since when Windows closes down, they should close
- down all TCP/IP connections that were activated under
- Windows. A later version of WFTPD will fix this.
-
- Edit Menu
-
- The only option here, Copy, has been greyed out - this is
- reserved for future expansion, to allow you to copy parts of
- the on-screen log information to the clipboard.
-
- View Menu
-
- This has one option, "Status Bar". This toggles the display
- of the status bar on the bottom line of the screen display,
- which will contain a on-line description of whatever command
- is currently highlighted on any menu.
-
- Logging Menu
-
- This is where decisions are made as to whether logging is
- performed, and what information is logged. The first
- option, "Logging On", enables the logging of items checked
- below the separator, and provides a quick method of turning
- on or off all log information. "Clear Screen" clears the
- window of all on-screen logging. This is a non-reversable
- process.
-
- Underneath the separator (the horizontal line) are the
- options describing what information gets logged. "Gets"
- enables logging of any transfer FROM the WFTPD system.
- "Puts" enables logging of transfers in the other direction.
- "Logins" enables a log of every non-anonymous user who
- connects to your system, and "Anonymous" enables logging of
- the anonymous connections. "Commands" enables logging of
- all other commands issued by connected FTP clients.
-
- The last, and perhaps dangerous, option is "Winsock Calls".
- This is included mainly to aid in the isolation of faults
- between WFTPD and your Winsock stack. Since the Winsock
- specification is relatively new, there are some areas where
- the writers of Winsock stacks may not have got it 'right',
- and some areas where they are not necessarily 'wrong', but
- disagree with the interpretation I make of the winsock spec.
- If you enable this option, every call to the Winsock stack
- will be logged, along with an error code. An error code of
- 0 means no error, and on any "[signal]" line, the error
- number is the type of signal received. The only other error
- number to be expected is 10035, which means that the
- transfer of data blocked - this is a normal condition for
- any network connection. Any other error condition may need
- investigation.
-
- Message Menu
-
- This controls various messages that users see. The first
- two items will put up dialogs to allow you to enter up to 20
- line messages to be displayed on entry into, and exit from,
- the WFTPD system. In the unregistered shareware version,
- these dialogs come up, but may NOT be edited. I apologise
- if the message seems rude to you, but please don't be a self-
- righteous ninny about it - I have had several people
- complain that they cannot reasonably test the program with
- these messages in. I believe this argument is phoney - if
- you are testing the software, I would hope that $15 is a
- drop in the ocean compared to the cost of your (and your
- testers') time, and I would also hope that if you have other
- people connecting into your 'test' site, it should be no
- problem to inform them that this message is due to your
- testing an unregistered shareware product.
-
- The third item on this menu, "MESSAGE.FTP" is a toggle that
- enables messages to be displayed on each change of
- directory. If this option is enabled, and the user changes
- directory into one with a file called "MESSAGE.FTP", the
- text inside this file is sent to the user along with the
- notification of his new directory. My advice is to keep
- this message brief, since many people have only twenty line
- terminals, and may not be able to pause, or scroll back.
-
- Any text can appear in these files, and also in the Greeting
- and Farewell dialogs. You do not need to prepend each line
- with any special text, as in some other ftp server
- implementations - the server handles this for you.
-
- Security Menu
-
- This implements a rather limited subset of the security
- available on more powerful ftp daemons. Currently only two
- items are enabled - the third, greyed, item is reserved for
- the next version of WFTPD, and will allow you to specify
- which users can write from, read to, or list, which
- directories.
-
- The first item, "User/Password", brings up the "User
- Security Settings" dialog. It is on this dialog that users
- are defined. To define a new user, simply enter the user's
- login name in the "User name" box; next, if you wish to, you
- may define a password and home directory for this user.
- When entering a password, the password must be typed exactly
- the same in both the Password and Verify boxes. Since you
- cannot see what you are typing, the "Add/Alter" button is
- greyed out whenever the text in the two boxes does not
- exactly match. The user's entry is only added to the INI
- file on pressing the Add/Alter button while that user's name
- is in the User Name box. On pressing the Add/Alter button,
- the following settings are stored: User Name, Password, Home
- Directory, and the "Restrict To Home" option's value.
-
- The "Restrict To Home" checkbox will, if checked, require
- that this user only be allowed access to his home directory
- and below. All users will be placed in their Home Directory
- when they first log in.
-
- The "Enable Security" check box, when checked, requires that
- each connection enters a valid user name and password, which
- must match those on file in the INI file. If unchecked, a
- connection may enter any user name and password, and will be
- granted access to all your connected drives.
-
- The "Allow Anonymous" check box enables, or disables the
- "anonymous" user. This user name is synonymous with the
- "ftp" user name, for ease of typing, and is provided so that
- unprivileged access can be granted to your system. Any
- connection may log in to the anonymous user, and may enter
- any text as the password. WFTPD will suggest to each
- connection that they supply an email address as their
- password, and this value is logged if the "Anonymous" loggin
- option is enabled. This provides a limited method of
- determining who has been logging into your system.
-
- The "Enable Security" and "Allow Anonymous" check boxes will
- have their status saved when the "Close" button is clicked
- to close up the dialog.
-
- The last button, "Delete" will remove the currently selected
- user name entry from your INI file.
-
- The second item in the Security main menu is "Host/Net".
- This is a new feature to 1.9, and may be a trifle flakey as
- of yet. The idea is to either allow you to deny access to
- particular sites which cause you problems, or to allow only
- particular sites to connect, and to deny all other sites
- from connecting.
-
- The default setting is indicated in the "Default Action"
- box. To specifically allow or deny a particular host or
- network, you may enter an IP address mask in the "Host
- Address" box. This mask is a set of four values, separated
- by dots. These values are either decimal numbers in the
- range 0-254, or asterisks. An asterisk in any particular
- part will allow the address to match all values in that
- position. For instance, if you wanted to flag all local
- connections through the "loopback" interface, you might
- enter "127.*.*.*" here.
-
- When a connection is received, the default action is noted,
- and then the address of the incoming site is matched against
- those host address masks whose specific action goes against
- the default action. If a match is found, then the specific
- action is performed, otherwise the default action is.
-
- As with the User/Password screen, the setting for any "Host
- address" is only saved on clicking the Add/Alter button,
- which only becomes solid on entering a valid host mask. The
- Delete button removes the entry for the host address
- displayed. As might be expected, the Default Action is
- saved on closing the dialog box.
-
- Help Menu
-
- The Index option pulls up the help file for WFTPD (if it can
- be found), and points to the contents page. This may be
- worth exploring for hints on how the software may be used.
-
- The Using Help option gives you some Windows Help about
- using Windows Help.
-
- The About option displays a short copyright message, and may
- be used to find out whether you are running a registered, or
- unregistered, version, which version you are running, and
- what date it was built on. An additional button is
- displayed at the bottom of the About Dialog, which in the
- unregistered version asks "How Do I Register?", and in the
- registered version asks "How Do I Contact The Author?". On
- pressing this button, the help file is again searched for,
- and the page on contacting the author, or registering the
- software, is displayed.
-
- Registering the Software
-
- What will registering the software get you? A brand
- spanking new registered copy of the executable and all
- documentation (just in case you lost your documentation, or
- it was updated recently). Also, the registered version has
- the following limits removed - a maximum of five file
- transfers per login session - no editing of the Greeting and
- Farewell messages allowed.
-
- It will greatly aid in my records if all registrations are
- accompanied by the enclosed order form, which is in
- ORDER.DOC in WinWord 2.0 format, or in ORDER.TXT in simple
- ASCII text. The registration fee is $15, and I accept only
- cheques and cash. Be very careful if sending cash - the
- Postal Service has a reputation for pilfering, which does
- not seem to be totally undeserved considering the occasional
- empty envelope I receive. Cheques are far safer, and should
- be made out to "Alun Jones". There is no "WFTPD Software
- Inc", or any such name (although one day, who knows?).
-
- If an internet-reachable e-mail address is included with
- your order, you will be added to a mailing list of all
- registered users of WFTPD, which will allow me to notify you
- of any future upgrades, or troubleshooting techniques and
- tips. If you provide me with an internet e-mail address or
- an internet ftp site on which to deposit the registered copy
- (so long as it is not a public archive site!), you will be
- sent free upgrades whenever they are available.
-
- Source code to the program is not distributed with the
- registered or unregistered version of this software - it
- cost me a lot of time to develop this program, and so it
- costs mucho dinero to get the source code out of me.
-
- Site licences are generally offered at a rate of $500 for
- each block of 100 users. If this is not suited to your
- situation, make me an offer and we can haggle. Be warned
- that my haggling may consist of repeatedly droning "$500 for
- each block of 100 users". But be hopeful that I may decide
- your offer is good.
-
- I would prefer if all payments are made in US Dollars.
- These are easy for me to cash, and are often reasonably easy
- for foreigners to lay their hands on. In a pinch, I will
- accept European currency cheques, so long as the amount
- includes a certain increase to allow for the money-changers
- to have their rake. For instance, I have been asking people
- in England to send me 15 pounds sterling.
-
- Finally
-
- And finally, may I remind you that the address for all
- communication to me is Alun Jones, 1910 Westmead 3702,
- Houston TX 77077 USA. The previously quoted address of
- 12919 Whittington 1104A is my old address. All mail to
- that address should be forwarded to my new address, but it
- is probably not wise to trust in that too much.
-
- I would like to thank a whole bunch of people who have
- helped me with this product, particularly:
-
- Fred Whiteside, of Beame & Whiteside, without whom I would
- have screwed up the User/Password security.
- Bob Quinn, of FTP Software Inc, for clarifying many of the
- points of the Winsock spec, and for generally being very
- informative on the Winsock programming mailing lists.
- All the staff of FTP Software Inc, for sending me a
- developer's edition of PC/TCP version 2.3, which I have
- regrettably not yet had the time to install.
- Peter Tattam, of Trumpet Software International, for
- developing perhaps the definitive shareware winsock
- implementation.
- All the developers of winsock stacks, without whom my
- program would be useless.
- All the writers of the winsock v1.1 specification, for
- providing a most useful and simple environment for
- programming TCP/IP network applications.
- Anyone who has ever given me encouragement and constructive
- criticism concerning WFTPD, in particular those who wrapped
- their comments in cheques.
- My mother, my father and the entire academy of motion
- picture arts (sorry, couldn't resist that - this was written
- on the night after the Oscars)
- _______________________________
- 1The term "Daemon" refers to an invisible servants - unlike
- "demons", a daemon is neither intrinsically good nor evil,
- it does only what it is told.
-